package cn.itcast.b_etl.source;

import org.apache.flink.api.java.ExecutionEnvironment;

import java.util.ArrayList;

/**
 * 批处理->本地集合的source
 * <p>
 * 需求:读取本地数据进行单词统计
 */

/**
 * @author zhb
 * @version V1.0
 * @Date
 * @Description 批处理单词统计测试类
 */
public class BatchSource {
    //四种方式加载本地数据源,只在测试环境使用,不会在生产环境使用
    //1.fromCollection() -> ArrayList
    //2.generateSequence()
    //3.fromElements()
    //4.readTextFile

    public static void main(String[] args) throws Exception {

        /**
         * 1.获取批处理执行环境
         * 2.加载数据源
         * 3.数据打印(在批处理中打印是一个触发算子)
         */
        //1.获取批处理执行环境
        ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment();
        //2.加载数据源
        //1.fromCollection() -> ArrayList
        ArrayList<Integer> list = new ArrayList<>();
        list.add(1);
        list.add(2);
        env.fromCollection(list).print();

        //2.generateSequence()
        env.generateSequence(0,10).print();

        //3.fromElements()
        env.fromElements('a','b','c','d').print();

        //4.readTextFile
        //env.readTextFile("data/user.csv").print();


    }

}
